package com.kxmall.huishou.domain.bo;

import com.kxmall.common.core.domain.BaseEntity;
import com.kxmall.common.core.validate.AddGroup;
import com.kxmall.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.math.BigDecimal;

/**
 * 用户任务信息业务对象 hs_user_task
 *
 * @author kxmall
 * @date 2023-11-23
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class HsUserTaskBo extends BaseEntity {

    /**
     * 
     */
    @NotNull(message = "不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 任务标题
     */
    @NotBlank(message = "任务标题不能为空", groups = { AddGroup.class, EditGroup.class })
    private String title;

    /**
     * 任务内容
     */
    @NotBlank(message = "任务内容不能为空", groups = { AddGroup.class, EditGroup.class })
    private String content;

    /**
     * 0签到任务，1订单任务，2评价任务，3、阅读任务，4活动任务
     */
    @NotNull(message = "0签到任务，1订单任务，2评价任务，3、阅读任务，4活动任务不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long type;

    /**
     * 0按次，1按天
     */
    @NotNull(message = "0按次，1按天不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long countType;

    /**
     * 获得积分数
     */
    @NotNull(message = "获得积分数不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal integral;

    /**
     * 获得碳币数
     */
    @NotNull(message = "获得碳币数不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal carbonScore;

    /**
     * 当日获得最大积分
     */
    @NotNull(message = "当日获得最大积分不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal maxIntegral;

    /**
     * 当日获得最大碳币
     */
    @NotNull(message = "当日获得最大碳币不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal maxCarbonScore;


}
